8 research outputs found

    Parallel approaches to shortest-path problems for multilevel heterogeneous computing

    Get PDF
    Existen diferentes algoritmos que solucionan problemas de computación del camino-más-corto. Estos problemas son clave dentro de la optimización combinatoria por sus múltiples aplicaciones en la vida real. Últimamente, el interés de la comunidad científica por ellos crece significativamente, no sólo por la amplia aplicabilidad de sus soluciones, sino también por el uso eficiente de la computación paralela. La aparición de nuevos modelos de programación junto con las modernas GPUs, ha enriquecido el rendimiento de los algoritmos paralelos anteriores, y ha propiciado la creación otros más eficientes. El uso conjunto de estos dispositivos junto con las CPUs conforman la herramienta perfecta para enfrentarse a los problemas más costosos del cálculo de caminos-más-cortos. Esta Tesis Doctoral aborda ambos contextos mediante: el desarrollo de nuevos planteamientos sobre GPUs para problemas de caminos-más-cortos, junto con el estudio de configuraciones óptimas; y el diseño de soluciones que combinan algoritmos secuenciales y paralelos en entornos heterogéneos.Departamento de Informática (Arquitectura y Tecnología de Computadores, Ciencias de la Computación e Inteligencia Artificial, Lenguajes y Sistemas Informáticos

    Controllers: an abstraction to ease the use of hardware accelerators

    Get PDF
    Producción CientíficaNowadays the use of hardware accelerators, such as the graphics processing units or XeonPhi coprocessors, is key in solving computationally costly problems that require high performance computing. However, programming solutions for an efficient deployment for these kind of devices is a very complex task that relies on the manual management of memory transfers and configuration parameters. The programmer has to carry out a deep study of the particular data that needs to be computed at each moment, across different computing platforms, also considering architectural details. We introduce the controller concept as an abstract entity that allows the programmer to easily manage the communications and kernel launching details on hardware accelerators in a transparent way. This model also provides the possibility of defining and launching central processing unit kernels in multi-core processors with the same abstraction and methodology used for the accelerators. It internally combines different native programming models and technologies to exploit the potential of each kind of device. Additionally, the model also allows the programmer to simplify the proper selection of values for several configuration parameters that can be selected when a kernel is launched. This is done through a qualitative characterization process of the kernel code to be executed. Finally, we present the implementation of the controller model in a prototype library, together with its application in several case studies. Its use has led to reductions in the development and porting costs, with significantly low overheads in the execution times when compared to manually programmed and optimized solutions which directly use CUDA and OpenMP.2019-01-01MICINN (Spain) and ERDF program of the European Union: HomProg-HetSys project (TIN2014-58876-P), and COST Program Action IC1305: Network for Sustainable Ultrascale Computing (NESUS)

    TuCCompi: a multi-layer model for distributed heterogeneous computing with tuning capabilities

    Get PDF
    Producción CientíficaDuring the last decade, parallel processing architectures have become a powerful tool to deal with massively-parallel problems that require High Performance Computing (HPC). The last trend of HPC is the use of heterogeneous environments, that combine different computational processing devices, such as CPU-cores and GPUs (Graphics Processing Units). Maximizing the performance of any GPU parallel implementation of an algorithm requires an in-depth knowledge about the GPU underlying architecture, becoming a tedious manual effort only suited for experienced programmers. In this paper, we present TuCCompi, a multi-layer abstract model that simplifies the programming on heterogeneous systems including hardware accelerators, by hiding the details of synchronization, deployment, and tuning. TuCCompi chooses optimal values for their configuration parameters using a kernel characterization provided by the programmer. This model is very useful to tackle problems characterized by independent, high computational-load independent tasks, such as embarrassingly-parallel problems. We have evaluated TuCCompi in different, real-world, heterogeneous environments using the All-Pair Shortest-Path problem as a case study.Ministerio de Economía y Competitividad and ERDF program of the European Union: CAPAP-H5 network (TIN2014-53522-REDT), MOGECOPP project (TIN2011-25639); Junta de Castilla y Leon (Spain): ATLAS project (VA172A12-2); and the COST Program Action IC1305: NESUS

    Comprehensive evaluation of a New GPU-based approach to the shortest-path problem

    Get PDF
    Producción CientíficaThe Single-Source Shortest Path (SSSP) problem arises in many different fields. In this paper, we present a GPU SSSP algorithm implementation. Our work significantly speeds up the computation of the SSSP, not only with respect to a CPU-based version, but also to other state-of-the-art GPU implementations based on Dijkstra. Both GPU implementations have been evaluated using the latest NVIDIA architectures. The graphs chosen as input sets vary in nature, size, and fan-out degree, in order to evaluate the behavior of the algorithms for different data classes. Additionally, we have enhanced our GPU algorithm implementation using two optimization techniques: The use of a proper choice of threadblock size; and the modification of the GPU L1 cache memory state of NVIDIA devices. These optimizations lead to performance improvements of up to 23% with respect to the non-optimized versions. In addition, we have made a platform comparison of several NVIDIA boards in order to distinguish which one is better for each class of graphs, depending on their features. Finally, we compare our results with an optimized sequential implementation of Dijkstra's algorithm included in the reference Boost library, obtaining an improvement ratio of up to 19x for some graph families, using less memory space.Ministerio de Economía y Competitividad (Spain) and ERDF program of the European Union: CAPAP-H5 network (TIN2014-53522- REDT), MOGECOPP project (TIN2011-25639); Junta de Castilla y León (Spain): ATLAS project (VA172A12-2); and the COST Program Action IC1305: NESUS

    HiPEAC 2016 Workshop on High-Level Parallel Programming for GPUs (HLPGPU)

    No full text
    Producción CientíficaNowadays the use of hardware accelerators, such as the Graphics Processing Units (GPUs) or XeonPhi coprocessors, is key to solve computationally costly problems that require High Performance Computing (HPC). However, programming solutions for an efficient deployment in this kind of devices is a very complex task that relies on the manual management of memory transfers and configuration parameters. The programmer has to carry out a deep study of the particular data needed to be computed in each moment at the different computing platforms considering architectural details. We introduce the communicator concept as an abstract entity that allows the programmer to easily manage the communications and kernel launching details on hardware accelerators or multi-core devices in a transparent way. Furthermore, this model also gives the possibility to the programmer of launching CPU kernels in the multi-core processors with the same abstraction and methodology used for the accelerators. In this way, the burden of coding two different codes for managing the different computational devices is alleviated. Additionally, this entity allows the programmer to simplify the proper selection of values for kernel-launching configuration parameters. This is done through a simple characterization process of the kernel code to be executed. A programming model involving the communicator entity is described in this article. Finally, we also present a prototype library that implements the communicator model, together with its application in several study cases. Its use has led to reductions in the development costs with significantly low overheads in the execution times when compared to manually programmed and optimized solutions using CUDA and OpenMP directly.MICINN (Spain) and ERDF program of the European Union: HomProg-HetSys project (TIN2014-58876-P), CAPAP-H5 network (TIN2014-53522-REDT), and COST Program Action IC1305: Network for Sustainable Ultrascale Computing (NESUS)

    Tablon, una herramienta para gestionar gamificación en cursos de programación de computadoras

    No full text
    Tablon is a tool designed to introduce gamification methodologies in computer programming courses. It is an on-line judge for programming contests, with added gamification features.Departamento de Informática (Arquitectura y Tecnología de Computadores, Ciencias de la Computación e Inteligencia Artificial, Lenguajes y Sistemas Informáticos

    Network Properties of Local Fungal Communities Reveal the Anthropogenic Disturbance Consequences of Farming Practices in Vineyard Soils

    Get PDF
    Agroecosystems are human-managed ecosystems subject to generalized ecological rules. Understanding the ecology behind the assembly and dynamics of soil fungal communities is a fruitful way to improve management practices and plant productivity. Thus, monitoring soil health would benefit from the use of metrics that arise from ecological explanations that can also be informative for agricultural management. Beyond traditional biodiversity descriptors, community-level properties have the potential of informing about particular ecological situations. Here we assess the impact of different farming practices in a survey of 350 vineyard soils from the United States and Spain by estimating network properties based on spatial associations. Our observations using traditional approaches show results concurring with previous literature: the influence of geographic and climatic factors on sample distributions, or different operational taxonomic unit (OTU) compositions depending on agricultural managements. Furthermore, using network properties, we observe that fungal communities ranged from dense arrangements of associations to a sparser structure of associations, indicating differential levels of niche specialization. We detect fungal arrangements capable of thriving in wider or smaller ranges of temperature, revealing that niche specialization may be a critical soil process impacting soil health. Low-intervention practices (organic and biodynamic managements) promoted densely clustered networks, describing an equilibrium state based on mixed collaborative communities. In contrast, conventionally managed vineyards had highly modular sparser communities, supported by a higher coexclusion proportion. Thus, we hypothesize that network properties at the community level may help to understand how the environment and land use can affect community structure and ecological processes in agroecosystems.IMPORTANCE Soil fungal communities play a key role in agroecosystem sustainability. The complexity of fungal communities, at both taxonomic and functional levels, makes it difficult to find clear patterns connecting community composition with ecosystem function and to understand the impact of biotic (interspecies interactions) and abiotic (e.g., climate or anthropogenic disturbances) factors on it. Here we combine network analysis methods and properties, proposing a novel analytical approach: to infer ecological properties from local networks, which we apply to the study of fungal communities in vineyard soils. We conclude that different levels of farming intensification may lead to different ecological strategies in soil fungal communities settled by particular association arrangements

    Characteristics and predictors of death among 4035 consecutively hospitalized patients with COVID-19 in Spain

    No full text
    corecore